$(function () {
    var product_datagrid = $("#product_datagrid");
    var product_dialog = $("#product_dialog");
    
    product_datagrid.datagrid({
        url:"/productInfo/list",
        fit:true,
        columns:[[
            {field:'x',checkbox:true},
            {field:'id',title:'id',width:100,hidden:true}, //hidden 隐藏显示该列
            {field:'number',title:'保险编号',width:100},
            {field:'name',title:'产品名称',width:100},
            {field:'agency', title:'所属机构', width:80,formatter:function (value, row, index) {
                return value.name;
            }},
            {field:'limityear',title:'保障年限',width:100},
            {field:'insurance',title:'保额',width:100},
            {field:'annualfee',title:'年费',width:100},
            {field:'state',title:'状态',width:100,formatter: function(value,row,index){
                if (value == 1){
                    return "<font color='green'>在售</font>";
                } else if(value == 0) {
                    return "<font color='gray'>停售</font>";
                }
            }},
            {field:'deduction',title:'不计免赔',width:100,formatter: function(value,row,index){
                if (value == 1){
                    return "<font color='green'>是</font>";
                } else if(value == 0) {
                    return "<font color='red'>否</font>";
                }
            }},

            
        ]],
        rownumbers:true,
        striped:true,
        toolbar:"#product_toolbar",
        pagination:true,
        fitColumns:true,
        singleSelect:true,
        onSelect:function (index, row) {
            //根据员工的状态修改离职/复职按钮的显示
         if(row.state == 1){
            $("#change_btn").linkbutton({text:"停售"})
         }else{
             $("#change_btn").linkbutton({text:"在售"})
         }
            //根据员工的状态修改离职/复职按钮的显示
         if(row.deduction == 1){
            $("#stop_btn").linkbutton({text:"关闭不计免赔"})
         }else{
             $("#stop_btn").linkbutton({text:"恢复不计免赔"})
         }
        }
    })
    //弄出一个用于输入员工信息的对话框
    //因为对话框在编辑与添加是公用同一个, 所以页面加载完毕时候提前初始化, 在点击添加与编辑时候,直接显示出来即可
    product_dialog.dialog({
        width:400,
        height:400,
        buttons:"#bb",
        closed:"true"
    })
    
    var cmdObj = {
        //刷新列表数据
        reload: function () {
                $("#deduction").combobox("clear");
                product_datagrid.datagrid("reload");
        },
        //编辑操作
        edit: function () {
        $("#product_form").form("clear");
        var row = product_datagrid.datagrid("getSelected");
        if(!row){
            $.messager.alert("温馨提示","请选择要编辑的行");
        }else{
            //打开编辑对话框
            product_dialog.dialog("setTitle","编辑车辆信息");
            product_dialog.dialog("open");
             if(row.agency){
                 row["agency.id"] = row.agency.id;
             }
            //将数据加载到form表单中
            $("#product_form").form("load",row);//数据回显
        }
    },

        //添加操作
        add: function(){
        //因为编辑与添加公用一个对话框,所以在操作之前应该将以前的数据清空
        $("#product_form").form("clear");
        //打开添加对话框
        product_dialog.dialog("setTitle","添加机构");
        product_dialog.dialog("open");
    },
        //保存员工
        save: function() {
        //获取id
        var id = $("#productId").val();
        //因为编辑与添加公用对话框中同一个保存按钮,所以需要根据id来判断添加还是编辑操作
        var url="/productInfo/save";
        if(id){
            url="/productInfo/update";
        }
        //提交表单
        $("#product_form").form("submit",{
            //表单提交路径
            url:url,
            //操作成功之后执行该函数, data是返回的数据
            //注意:data是json格式的字符串
            success: function(data){

                data = $.parseJSON(data);
                //3.操作失败,提示用户
                if (!data.succeed){
                    $.messager.alert('温馨提示',data.errorMsg);
                }else{
                    $.messager.alert('温馨提示',"保存成功");
                    product_dialog.dialog("close");
                    product_datagrid.datagrid("reload");
                }
            }

        })
    },

        //关闭对话框
        cancel:function() {
        product_dialog.dialog("close");
    },
        //高级查询
        query:function() {

        var keyword = $("#keyword").textbox("getValue");
        var state = $("#state").combobox("getValue");
        var deduction = $("#deduction").combobox("getValue");
        product_datagrid.datagrid("load",{
            keyword:keyword,
            state:state,
            deduction:deduction
        })
    },
        //改变状态
        changeState: function () {
            //从datagrid中获取选中的哪一行数据
            var row = product_datagrid.datagrid("getSelected")
            if(!row){
                $.messager.alert("温馨提示","请选择要编辑");
            }else{
                $.messager.confirm("确认", "你确认想要执行这个操作?",function(r){
                    if(r){
                        //1.发起请求修改状态
                        $.get("/productInfo/changeState",{id:row.id},function(data){
                            if(!data.succeed){
                                $.messager.alert("温馨提示",data.errorMsg);
                            }else{
                                //刷新列表数据
                                product_datagrid.datagrid("reload");
                            }
                        })
                    }
                });
            }
        },
        //关闭不计免赔
        changeDeduction: function () {
            var row = product_datagrid.datagrid('getSelected');
            if (row == null) {
                $.messager.alert('温馨提示', '至少选择一条记录');
                return;
            }
            else{
                $.messager.confirm("确认", "你确认想要执行这个操作?",function(r){
                    if(r){
                        //1.发起请求修改状态
                        $.get("/productInfo/changeDeduction",{id:row.id},function(data){
                            if(!data.succeed){
                                $.messager.alert("温馨提示",data.errorMsg);
                            }else{
                                //刷新列表数据
                                product_datagrid.datagrid("reload");
                            }
                        })
                    }
                });
            }
        },

    }

    //调用
    $("a[data-cmd]").click(function () {
        var cmd = $(this).data("cmd");
        cmdObj[cmd]();
    })
})











